package com.xbts.system.service;

import com.huaweicloud.sdk.bss.v2.model.*;
import com.xbts.common.core.domain.AjaxResult;
import com.xbts.system.domain.dto.CreateSubCustomerReqDTO;
import com.xbts.system.domain.dto.HuaweiAccountBindDTO;
import com.xbts.system.domain.dto.RegionIdDTO;
import com.xbts.system.domain.dto.SendVerificationMessageCodeReqDTO;

public interface IHuaweiAccountService {

    /**
     * 创建用户
     * @param dto
     * @return
     */
    AjaxResult createSubCustomer(RegionIdDTO<CreateSubCustomerRequest> dto);

    /**
     * 校验用户信息
     * @param dto
     * @return
     */
    AjaxResult checkUserIdentity(RegionIdDTO<CheckUserIdentityRequest> dto);

    /**
     * 发送验证码
     * @param dto
     * @return
     */
    AjaxResult sendVerificationMessageCode(RegionIdDTO<SendVerificationMessageCodeRequest> dto);

    /**
     * 查询云经销商列表
     * @param dto
     * @return
     */
    AjaxResult listIndirectPartners(RegionIdDTO<ListIndirectPartnersRequest> dto);

    /**
     * 查询客户列表
     * @param dto
     * @return
     */
    AjaxResult listSubCustomers(RegionIdDTO<ListSubCustomersRequest> dto);

    /**
     * 绑定账号通知
     */
    AjaxResult accountBind(HuaweiAccountBindDTO dto);

    /**
     * 获取华为云登录链接参数
     */
    AjaxResult loginParameters();
}
